package cn.com.dycc.task_manage.ordermain.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import cn.com.dycc.task_manage.ordermain.entity.OrderMainEntity;
import cn.com.dycc.task_manage.ordermain.entity.ResultOrderMain;
import cn.com.dycc.task_manage.ordermain.param.FindAllParam;
import cn.com.dycc.task_manage.ordermain.param.OrderMainParam;
/**
 * 工单主表持久层
 * @author linfa
 *
 */
@Repository("orderMainDao")
public interface OrderMainDao {
	
	/**
	 * 发送工单任务
	 * @param orderMainParam
	 * @return
	 */
	public int sendOrderMain(OrderMainParam orderMainParam);
	
	/**
	 * 根据order_id查询工单主表信息
	 * @param order_id
	 * @return
	 */
	public OrderMainEntity findOrderMainByOrderId(
			@Param("order_id")String order_id,
			@Param("org_id")String org_id);
	
	/**
	 * 根据id更新主表状态
	 * @param order_id
	 * @return
	 */
	public int updateOrderStatusByid(
			@Param("order_id")String order_id,
			@Param("finish_date")String finish_date,
			@Param("org_id")String org_id
			);
	
	/**
	 * 根据登录用户查询所有自己发送的工单
	 * @param order_id
	 * @return
	 */
	public List<ResultOrderMain> findAll(FindAllParam findAllParam);
	
	/**
	 * 根据登录用户查询所有自己发送的工单 统计
	 * @param order_id
	 * @return
	 */
	public String findAllCount(
			@Param("org_id")String org_id,
			@Param("send_user_id")String send_user_id,
			@Param("order_title")String order_title
			);
}
